This invention relates to the provisioning of connection through a transmission network, and in particular through a SONET/SDH network formed from multiple sub-networks.
Networks provide a mechanism for exchanging data between various nodes in the network and between devices coupled to the network. Various types of protocols may be used for propagating data through a single network or through multiple interconnected networks. A connection-oriented protocol is an example of a network protocol which establishes a connection between a source and a destination and transfers data along the established connection. The established connection typically includes a series of links through intermediate nodes in the network. Once the connection has been established, all data for a particular data flow travels across the same path. Asynchronous Transfer Mode (ATM), Internet Stream Protocol, Frame Relay and SONET/SDH are examples of connection-oriented protocols.
Most networks are organized as a series of hardware and software layers within each station. These layers interact to format data for transfer between the source and destination communicating over the network. Specifically, predetermined services are performed on the data as it passes through each layer and the layers communicate with each other by means of the predefined protocols. This layered design permits each layer to offer selected services to other layers using a standardized interface that shields the other layers from the details of actual implementation of the services.
In an attempt to standardize network architectures, i.e., the sets of layers and protocols used within a network, a generalized model has been proposed by the International Standards Organization (ISO). The model, called the Open Systems Interconnection (OSI) reference model, is directed to the interconnection of systems that are “open” for communication with other systems. The OSI model has seven layers which are termed, in ascending interfacing order, the physical, data link, network, transport, session, presentation, and application layers. These layers are arranged to form a “protocol stack” in each station of the network.
FIG. 1 illustrates a schematic block diagram of conventional protocol stacks 125 and 175 used to transmit data between a source station 110 and a destination station 150, respectively, of a network 100. Each protocol stack comprises a collection of protocols, one per layer, and is preferably structured according to the OSI seven-layer model. As can be seen, the protocol stacks 125 and 175 are physically connected through a communications channel 180 at the physical layers 124 and 164. For ease of description, the protocol stack 125 will be described.
In general, the application layer 112 contains a variety of protocol functions that are commonly needed by software processes, while the presentation layer 114 is responsible for the presentation of transmitted data in a meaningful manner to the application layer. The session layer 116, transport layer 118 and the network layer 120 are substantially involved in is providing pre-defined sets of services to aid in connecting the source station to the destination station.
The physical layer 124 is concerned with the actual transmission of signals across the communication channel. The data link layer 122, on the other hand, is responsible for transmission of data from one station to another. This invention is concerned specifically with communication over a SONET/SDH network, The SONET/SDH frame structure is defined at the physical layer of the seven layer model.
Data transmission over the network 100 consists of generating data in a sending process 104 of the source station 110, passing that data to the application layer 112 and down through the layers of the protocol stack 125, where the data are sequentially formatted as a frame for delivery onto the channel 180 as bits. Those frame bits are then transmitted to the protocol stack 175 of the destination station 150, where they are passed up that stack to a receiving process 174. Data flow is schematically illustrated by solid arrows.
Although actual data transmission occurs vertically through the stacks, each layer is programmed as though such transmission were horizontal. That is, each layer in the source station 100 is programmed to transmit data to its corresponding layer in the destination station 150, as schematically shown by dotted arrows. To achieve this effect, each layer of the protocol stack 125 in the source station 110 typically adds information (in the form of a header field) to the data frame generated by the sending process as the frame descends the stack. At the destination station 150, the various encapsulated headers are stripped off one-by-one as frame propagates up the layers of stack 175 until it arrives at the receiving process.
A significant function of each layer in the OSI model is to provide services to the other layers. One type of service offered by the layers is a “connectionless” transmission service where each transmitted packet carries the full address of its destination through the network. A key function of a routing device such as a bridge or a router is determining the next sub-network or node to which the packet is sent. A bridge operates at the data-link level, connecting one or more networks (for example LANs) together (that is, facilitating the transfer of messages among the LANs connected to the bridge). A router operates at the network level and may span clusters of LANs. When the network layer receives a packet from the transport layer for transmission over the network, it encapsulates the packet with a header containing, inter alia, source and destination addresses. An example of a network layer protocol is the Internet Protocol.
This invention is concerned with the end-to-end provisioning of connections in the SONET/SDH physical layer. This process is normally performed manually by a network planner and is labour and time intensive.
This invention relates to a method of establishing a connection in a connection-oriented transport network, by using a routing protocol to identify the sole or optimal path over which the data is to travel. The nodes then use this routing protocol between one another to calculate routes between them.
A common routing protocol is a link state routing protocol. In a link state routing protocol, each node in the network (for example, a router) maintains information about each link in the network. A topology state routing protocol is a refinement of link state protocol in which significant status about the internal structure or operation of other nodes in the network may be maintained in addition to information about links. Conventional routing protocols operate at the network layer.
Once the source station has determined the path to the destination, it caches the path for future use, and then transmits frames specifying the path and the address of the destination station onto the network.
In one common route-discovery procedure, the source station issues the frame as an “all-paths explorer” packet that is received by each station on the local sub-networks. Each routing device copies the frame and supplies information relating to the route and then distributes the copy to all interconnected nodes. Eventually, a copy of the broadcast explorer frame reaches every station on every sub-network of the network. Each station may respond to the source by issuing a response frame containing its address and the routing information. The source station examines the information contained in these response frames and selects (e.g., based on the round-trip time for return) a path to the intended destination. Routing devices along the path may also cache the path to the destination station.
When multiple sub-networks are connected together, and a route is required which spans across several sub-networks, the routing procedure becomes more computationally intensive. SONET/SDH networks are an example, in which different sub-network layers operate at different data rates. These sub-networks comprise Long Haul networks, Regional networks and Metro networks, and connections have to be established crossing network boundaries. These connections are made using the tributaries of the network nodes in one sub-network to connect to a network node with a lower line rate.
Conventionally, the provisioning within a SONET/SDH multi-layer network has been carried out by an essentially manual process at each of the sub-networks to be connected. This is labour and time consuming. An efficient routing procedure is therefore required capable of crossing network boundaries and capable of route determination through sub-networks. SONET/SDH is also a synchronous system, and a limited bandwidth is available for signalling purposes, in the form of allocated bits in each data frame. A routing procedure is therefore required which can be implemented using the available bandwidth for signalling in the existing SONET/SDH data communication channel.